import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)

/**
 * Write a description of class Disparo here.
 * 
 * @author Montes Alonso Irli Natali
 * @version Programacion Orientada a Objetos
 */
public abstract class Disparo extends Actor
{
    /**
     * Metodo de act, lo heredaran las subclases
     */
    public void act() 
    {
        if(Greenfoot.getRandomNumber(250)<10)
            espinasVamosTodosJuntos();
    }    

    /**
     * Metodo abstracto, en cada subclase se comporta de diferente manera
     */
    public abstract void espinasVamosTodosJuntos();

    /**
     * Metodo para acceder a la clase de Espina y agregarla en el mundo
     * @return espinita regresa una Espina
     */
    public Espina accedeEspinita()
    {
        World mundo;
        mundo=super.getWorld();

        Espina espinita;
        espinita=new Espina();  

        mundo.addObject(espinita,getX(),getY());  
        return espinita;
    }
}
